package com.pactera.asmp.server.dao;

import com.pactera.asmp.server.entity.ProjectModuleDTO;
import com.pactera.asmp.server.entity.ProjectModuleDTO2;
import com.pactera.asmp.server.entity.ProjectModuleScriptsDTO;
import com.pactera.asmp.server.entity.ProjectModuleSearch;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;

@Mapper
public interface ProjectModuleMapper {

    int insert(ProjectModuleDTO record);
    int update(ProjectModuleDTO record);

    List<ProjectModuleDTO> select(ProjectModuleSearch search);
    ProjectModuleDTO selectByProjectIdAndName(@Param("projectId") Integer projectId,@Param("name") String name,@Param("id") Integer id);


    int delete(@Param("ids") List<Integer> ids, @Param("userId")Integer userId, @Param("updateTime")LocalDateTime updateTime);

    List<ProjectModuleScriptsDTO> selectListScripts(ProjectModuleSearch search);

    int deleteCommon(@Param("ids") List<Integer> delete);

    List<ProjectModuleDTO2> selectCommonByName(@Param("name") String name, @Param("id") Integer id);

    int updateCommon(ProjectModuleDTO dto);

    int insertCommon(ProjectModuleDTO dto);

    List<ProjectModuleDTO> selectByIds(@Param("ids") List<Integer> ids);
}
